#include <iostream>
#include <cmath>
#include <string>
#include <cstring>
#include <vector>
#include <algorithm>
#include <map>
using namespace std;

//int t, n, m,R;
//int s[5005][5005];
//int main() {
//	ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
//	cin >> t;
//	while (t--) {
//		cin >> n >> m >> R;
//		for (int i = 0; i <= n; i++)
//		{
//			for (int j = 0; j <= m; j++) {
//				int tmp;
//				cin >> tmp;
//				s[i][j] += tmp;
//			}
//		}
//	}
//	return 0;
//}
map<pair<int, int>, bool> existed;
int t, n,m, p, h, c[10005], d[10005];
int main() {
	ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
	cin >> t;
	while (t--) {
		cin >> p >> h >> n;
		cin >> m;
		for (int i = 0,x,y; i < m; i++)
		{
			cin >> x >> y;
			if (x > y)swap(x, y);
			if (existed[{x,y}])continue;
			d[x + 1] - 1;
			d[y] + 1;
			existed[{x, y}] = true;
		}
		for (int i = 1; i <= n; i++)
			c[i] = c[i - 1] + d[i], cout << h + c[i] << '\n';

	}

	return 0;
}